package com.zebra.base.anno;

import com.zebra.base.anno.type.FieldNamingStrategy;
import com.zebra.base.anno.type.SortType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @ClassName GroupBy
 * @Description TODO GroupBy的排序字段
 * @Author 消魂钉
 * @Date 6/2 0002 17:46
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface GroupBy {
    /**
     * 字段名称
     * @return
     */
    String name() default "";

    /**
     * 排序优先级
     * @return
     */
    int priority() default 0;


    /**
     * 转化策略
     * @return
     */
    FieldNamingStrategy strategy() default FieldNamingStrategy.LOWERCASE_UNDERLINE_MODE;

}
